package com.heatup.apt.model.api.course;

import com.heatup.apt.model.course.CourseInfo;
import com.heatup.apt.model.store.StoreInfo;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

/**
 * 教练团课/檬营/私教返回实体
 *
 * @author: Blank
 * @create: 2016-12-09-下午 3:44
 */
public class CourseCoachTeamCampPrivateModel extends CourseInfo implements Serializable {

    private String storeName;   //门店名称
    private Date startTime;     //开课时间
    private Date endTime;       //结束时间
    private String startTimeStr; //开课时间 年月日格式
    private String startMinStr; //开课时间 时分格式
    private Integer courseNumber; //檬营 课时序号
    private String url; //檬营标题背景图
    private Boolean campStatus; //是否成营
    private BigDecimal price;   //会员价格
    private BigDecimal primePrice;  //普通价格
    private Integer weekday;    //团课 周几
    private String hourMin; //团课 时间
    private Integer leftDays;   //剩余几天 0就是今天
    private Integer leftDeadLineDays;   //檬营剩余截止报名天数
    private List<StoreInfo> stores; //私教门店
    private List<PrivateUserModel> users;   //私教用户列表

    public String getStoreName() {
        return storeName;
    }

    public void setStoreName(String storeName) {
        this.storeName = storeName;
    }

    public Date getStartTime() {
        return startTime;
    }

    public void setStartTime(Date startTime) {
        this.startTime = startTime;
    }

    public Date getEndTime() {
        return endTime;
    }

    public void setEndTime(Date endTime) {
        this.endTime = endTime;
    }

    public String getStartTimeStr() {
        return startTimeStr;
    }

    public void setStartTimeStr(String startTimeStr) {
        this.startTimeStr = startTimeStr;
    }

    public String getStartMinStr() {
        return startMinStr;
    }

    public void setStartMinStr(String startMinStr) {
        this.startMinStr = startMinStr;
    }

    public Integer getCourseNumber() {
        return courseNumber;
    }

    public void setCourseNumber(Integer courseNumber) {
        this.courseNumber = courseNumber;
    }

    public String getUrl() {
        return url;
    }

    public void setUrl(String url) {
        this.url = url;
    }

    public Boolean getCampStatus() {
        return campStatus;
    }

    public void setCampStatus(Boolean campStatus) {
        this.campStatus = campStatus;
    }

    public BigDecimal getPrice() {
        return price;
    }

    public void setPrice(BigDecimal price) {
        this.price = price;
    }

    public BigDecimal getPrimePrice() {
        return primePrice;
    }

    public void setPrimePrice(BigDecimal primePrice) {
        this.primePrice = primePrice;
    }

    public Integer getWeekday() {
        return weekday;
    }

    public void setWeekday(Integer weekday) {
        this.weekday = weekday;
    }

    public String getHourMin() {
        return hourMin;
    }

    public void setHourMin(String hourMin) {
        this.hourMin = hourMin;
    }

    public Integer getLeftDays() {
        return leftDays;
    }

    public void setLeftDays(Integer leftDays) {
        this.leftDays = leftDays;
    }

    public List<PrivateUserModel> getUsers() {
        return users;
    }

    public Integer getLeftDeadLineDays() {
        return leftDeadLineDays;
    }

    public void setLeftDeadLineDays(Integer leftDeadLineDays) {
        this.leftDeadLineDays = leftDeadLineDays;
    }

    public List<StoreInfo> getStores() {
        return stores;
    }

    public void setStores(List<StoreInfo> stores) {
        this.stores = stores;
    }

    public void setUsers(List<PrivateUserModel> users) {
        this.users = users;
    }

    @Override
    public String toString() {
        final StringBuilder sb = new StringBuilder("CourseCoachTeamCampPrivateModel{");
        sb.append(super.toString()).append('\'');
        sb.append("storeName='").append(storeName).append('\'');
        sb.append(", startTime=").append(startTime);
        sb.append(", endTime=").append(endTime);
        sb.append(", campStatus=").append(campStatus);
        sb.append(", price=").append(price);
        sb.append(", primePrice=").append(primePrice);
        sb.append(", weekday=").append(weekday);
        sb.append(", hourMin=").append(hourMin);
        sb.append(", leftDays=").append(leftDays);
        sb.append(", leftDeadLineDays=").append(leftDeadLineDays);
        sb.append(", users=").append(users);
        sb.append('}');
        return sb.toString();
    }
}
